Cache management in CORBA distributed object systems

نویسندگان

  • Zahir Tari
  • Herry Hamidjaja
  • Qitang Lin
چکیده

For many distributed data intensive applications, the default remote invocation of CORBA objects by clients is not acceptable because of performance degradation. Caching enables clients to invoke operations locally on distributed objects instead of fetching them from remote servers. This paper addresses the design and implementation of a specific caching approach for CORBA-based systems. We propose a new removal algorithm which uses a double linked structure and a hash table for eviction. We also present a new variation of optimistic two phase locking for consistency control, which does not require a lock at the client side by using a perprocess caching design. With the experiments we have performed, we demonstrate that the proposed caching approach provides an important performance gain: the caching with half buffer saves up to 45% of access time and the caching with full buffer saves up to 50% of access time. The Common Object Request Broker Architecture (CORBA) provides several advantages over existing communication protocols (like remote procedure call or sockets) such as location, operating system and programming language transparencies. However the core of CORBA, the Object Request Broker (ORB), which is responsible for providing such transparency, has problems like messaging overhead and over-use of networking bandwidth. By default, a CORBA client application performs a remote invocation for every request. For many data intensive distributed applications, this default remote invocation of CORBA objects by clients is not acceptable as it would result in performance degradation. Caching enables clients to invoke operations locally on distributed objects instead of fetching them from remote servers. Although caching has been substantially addressed in several areas (e.g. microprocessors, database systems [3, 4, 8], network file server [2, 7], web systems [9]), very little work has been done in CORBA environments. CORBA systems have specific requirements for object caching, including functional requirements related to architecture, model considerations (distributed objects are semantic entities containing data and operations), and non-functional requirements (scalability, availability, and reliability). Two issues need to be considered when designing a caching approach: (i) the design of an eviction technique (when the objects to be removed whenever the cache is full), and (ii) the design of a consistency technique (which will keep objects in the cache consistent with the server objects). This paper provides solutions to these two issues in the context of CORBA environments. An extension of the LRU algorithm, called enhanced LRU (LRU+), is proposed and is aimed at minimising the overall overhead by distribution of sorting process. This paper also presents a variation of optimistic two phase locking (O2PL) for consistency control, which does not require a lock at the client side by applying a per-process caching design. With the experiments we have performed in Orbix, we demonstrate that the proposed CORBA caching approach provides an important performance gain: caching with half buffer saves up to 45% of access time and the caching with full buffer saves up to 50% of access time. The paper is organised as follows. The next section describes some of the existing approaches that dealing with the issues of cache replacement and data consistency and applies our approach in context. Section 2 discusses the proposed caching architecture, and Section 3 describes a suitable caching approach for CORBA environ-

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Object Caching in a Transactional, Object-Relational CORBA Environment

The OMG's CORBA and CORBA services like the OTS are a technology standard that enable the building of transactional systems running in distributed and heterogeneous environments. In large-scale CORBA systems that integrate relational databases, however, careful attention must be paid to network traffic and the number of I/O-operations (like database access) performed, as these can degrade syste...

متن کامل

Design of Object Caching in a CORBA

CORBA Object Transaction Monitors (OTM) refer to a mid-dleware technology that enable the building of transactional, object-oriented information systems running in distributed and heterogeneous environments. In this paper, we address large-scale OTM-based systems and focus attention on the important quality factors of system performance , system scalability, and system reliability. We develop a...

متن کامل

Object Caching in a CORBA Compliant System

Distributed object systems provide the key to building large scale applications that can execute on a range of platforms. The Common Object Request Broker Architecture (CORBA) specification from OMG attempts to address interoperability and heterogeneity issues that arise in such systems. Our goal is to investigate performance issues for distributed object systems. We claim that object caching i...

متن کامل

Design of Object Caching in a CORBA OTM System

CORBA Object Transaction Monitors (OTM) refer to a middleware technology that enable the building of transactional, objectoriented information systems running in distributed and heterogeneous environments. In this paper, we address large-scale OTM-based systems and focus attention on the important quality factors of system performance, system scalability, and system reliability. We develop an o...

متن کامل

Making CORBA Objects Persistent: the Object Database Adapter Approach

This paper discusses a realization of object persistence in a CORBA-based distributed system. In our approach, persistence of CORBA objects is accomplished by the integration of the ORB with an ODBMS. This approach is not limited to pure object-oriented database systems, as the ODBMS may be a combination of a relational DBMS and an object-relational mapper. The design and implementation of an O...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • IEEE Concurrency

دوره 8  شماره 

صفحات  -

تاریخ انتشار 2000